14 research outputs found

    Computing Bounds for Counter Automata

    Get PDF
    Qualitative formal verification, that seeks Boolean answers about the behavior of a system, is often insufficient for practical purposes. Observing quantitative information is of greater interest, e.g. for the calibration of a battery or a real-time scheduler. Historically, the focus has been on quantities in continuous domain, but recent years showed a renewed interest for discrete quantitative domains. Counter Automata (CA) is a quantitative extension of classical omega-automata. Recently a nice theory has been developed for them that extends the qualitative setting, with counterparts in terms of logics, automata and algebraic structure. We propose an adaptation, with plenty of practical applications,  of this formalism to express properties over discrete quantitative domains. The behavior of a Counter Automaton defines a function from infinite words to integers. Finding the bounds of such a function over a given set of words can be seen as an extension of qualitative universal and existential model-checking. Although the problem of determining whether such bounds are finite have already been addressed, efficient algorithms to compute their exact values still lack. We propose an non-naive method for the computation of the exact values of these bounds. It relies on a generalization of the emptiness problem of omega-automata. To solve this generalized emptiness problem, we propose an algorithm that extends emptiness check algorithms based on SCC enumeration.

    The 4th Reactive Synthesis Competition (SYNTCOMP 2017): Benchmarks, Participants & Results

    Get PDF
    We report on the fourth reactive synthesis competition (SYNTCOMP 2017). We introduce two new benchmark classes that have been added to the SYNTCOMP library, and briefly describe the benchmark selection, evaluation scheme and the experimental setup of SYNTCOMP 2017. We present the participants of SYNTCOMP 2017, with a focus on changes with respect to the previous years and on the two completely new tools that have entered the competition. Finally, we present and analyze the results of our experimental evaluation, including a ranking of tools with respect to quantity and quality of solutions.Comment: In Proceedings SYNT 2017, arXiv:1711.10224. arXiv admin note: text overlap with arXiv:1609.0050

    CDCLSym: Introducing Effective Symmetry Breaking in SAT Solving

    No full text
    International audienceSAT solvers are now widely used to solve a large variety of problems, including formal verification of systems. SAT problems derived from such applications often exhibit symmetry properties that could be exploited to speed up their solving. Static symmetry breaking is so far the most popular approach to take advantage of symmetries. It relies on a symmetry preprocessor which augments the initial problem with constraints that force the solver to consider only a few configurations among the many symmetric ones. This paper presents a new way to handle symmetries, that avoid the main problem of the current static approaches: the prohibitive cost of the preprocessing phase. Our proposal has been implemented in MiniSym. Extensive experiments on the benchmarks of last six SAT competitions show that our approach is competitive with the best state-of-the-art static symmetry breaking solutions

    Extreme Symmetries in Complex Distributed Systems: the Bag-Oriented Approach

    No full text
    International audienceModel checking is widely used as an automatic exhaustive verification technique to check properties of complex systems. However, it is difficult to operate in the context of today’s emerging systems that combine distribution (and asynchronous communications) together with a large size (and a hierarchical composition of components – and thus, of specifications).This paper combines existing techniques tackling the known combinatorial explosion of model checking. To achieve this, we exploit the structure of such distributed systems (symmetries and hierarchical composition), thus allowing a better compression factor and calculus factorization in favorable cases. We present these techniques and assess their impact on some benchmark examples

    Crocodile: a Symbolic/Symbolic tool for the analysis of Symmetric Nets with Bag

    No full text
    International audienceThe use of high-level nets, such as colored Petri nets, is very convenient for modeling complex systems in order to have a compact, readable and structured specification. Symmetric Nets with Bags (SNB) were introduced to cope with this goal without introducing a burden due to the underlying complexity of the state space. The structure of bags allows through exploitation of symmetries to provide a compact quotient state space representation (similarly to the construction proposed in GreatSPN).In this paper, we present Crocodile, the first implementation of a modeling environment and model checker dedicated to SNB. Its goal is first to be a proof of concept for experimenting the quotient graph techniques together with hierarchical set decision diagrams. A second objective is to enable experimentation of modeling techniques with this new class of Petri nets

    Towards distributed software model-checking using decision diagrams

    No full text
    Abstract. Symbolic data structures such as Decision Diagrams have proved successful for model-checking. For high-level specifications such as those used in programming languages, especially when manipulating pointers or arrays, building and evaluating the transition is a challenging problem that limits wider applicability of symbolic methods. We propose a new symbolic algorithm, EquivSplit, allowing an efficient and fully symbolic manipulation of transition relations on Data Decision Diagrams. It allows to work with equivalence classes of states rather than individual states. Experimental evidence on the concurrent software oriented benchmark BEEM shows that this approach is competitive

    CDCLSym: Introducing Effective Symmetry Breaking in SAT Solving

    No full text
    This dataset includes source code, benchmarks and dependencies to reproduce the work presented in the TACAS 18 paper entitled<br>"CDCLSym: Introducing Effective Symmetry Breaking in SAT Solving"<br><br>Boolean satisfiability (SAT) is an area of active research with numerous applications. Increasingly, the development of approaches that can treat increasingly complex SAT problems has become a focus. This dataset and the related paper introduce a novel method of dynamically exploiting symmetries to speed up the solving of SAT problems.<div><br></div><div>This new approach is implemented as a C++ library called cosy. cosy can be interfaced with virtually any conflict-driven clauses learning (CDCL) SAT solver. In this instance it has been integrated with the SAT solver MiniSAT, termed MiniSym</div><div><br></div><div>MiniSym is evaluated against 3 existing SAT solvers: </div><div>- MiniSAT, as a reference without symmetry handling</div><div>- Shatter, a symmetry breaking pre-processor coupled with MiniSAT</div><div>- breakID, another symmetry breaking pre-processory also coupled with MiniSAT</div><div><br></div><div>A subset of the benchmark problems used is available in the directory <b>/subsent_cnfs</b>. All symmetries were computed with two different tools: saucy3 and bliss.</div><div><br></div><div>Source code for all 3 solvers, including the cosy + Mini SAT implementation, as well as both the saucy3 and bliss tools, are provided in the <b>/sources</b> directory.</div><div><br></div><div>Instructions for installation and running the included benchmarks are provided in the <b>README</b>.</div><div><br></div><div>Output from the included benchmarks is include in the file <b>TACAS-QUAD.csv</b>.</div

    Layered Data: A Modular Formal Definition without Formalisms

    No full text
    International audienceDefining formalisms and models in modular way is a painful task. Metamodeling tools and languages have usually not been created with this goal in mind. This article proposes a data structure, called layered data, that allows defining easily modular abstract syntax for formalisms and models. It also shows its use through an exhaustive example. As a side effect, this article discusses the notion of formalism, and as- serts that they do not exist as standalone objects, but rather as relations between models

    pyComBat, a Python tool for batch effects correction in high-throughput molecular data using empirical Bayes methods

    No full text
    Abstract Background Variability in datasets is not only the product of biological processes: they are also the product of technical biases. ComBat and ComBat-Seq are among the most widely used tools for correcting those technical biases, called batch effects, in, respectively, microarray and RNA-Seq expression data. Results In this technical note, we present a new Python implementation of ComBat and ComBat-Seq. While the mathematical framework is strictly the same, we show here that our implementations: (i) have similar results in terms of batch effects correction; (ii) are as fast or faster than the original implementations in R and; (iii) offer new tools for the bioinformatics community to participate in its development. pyComBat is implemented in the Python language and is distributed under GPL-3.0 ( https://www.gnu.org/licenses/gpl-3.0.en.html ) license as a module of the inmoose package. Source code is available at https://github.com/epigenelabs/inmoose and Python package at https://pypi.org/project/inmoose . Conclusions We present a new Python implementation of state-of-the-art tools ComBat and ComBat-Seq for the correction of batch effects in microarray and RNA-Seq data. This new implementation, based on the same mathematical frameworks as ComBat and ComBat-Seq, offers similar power for batch effect correction, at reduced computational cost
    corecore